package cn.green.core.components.dialect.impls.oracle.dialects;

import cn.green.core.components.dialect.DatabaseDqlDialect;
import cn.green.core.components.entity.DatabaseSql;
import cn.green.core.components.entity.JoinInfo;
import cn.green.core.model.QCondition;
import cn.green.core.model.QTable;
import com.alibaba.fastjson.JSONObject;

import java.util.Collections;
import java.util.List;
import java.util.Map;

/**
 * @author wang.yishu
 * @version 1.0
 * @className OracleDqlDialect
 * @description TODO
 * @date 2025/3/27 14:08
 */
public class OracleDqlDialect implements DatabaseDqlDialect {
    @Override
    public DatabaseSql selectListSql(QTable primaryTable, Map<String, JoinInfo> joinInfos, Map<String, JoinInfo> notJoinInfos, JSONObject param) {
        return null;
    }

    @Override
    public DatabaseSql selectListSql(QTable primaryTable, List<QCondition> conditions) {
        return null;
    }

    @Override
    public DatabaseSql selectPageSql(QTable table, JSONObject param, Integer pageNo, Integer pageSize) {
        return null;
    }

    @Override
    public DatabaseSql selectTotal(QTable table, JSONObject param) {
        return null;
    }

    @Override
    public DatabaseSql selectOneSql(QTable primaryTable, Map<String, JoinInfo> joinInfos, Object primaryValue) {
        return null;
    }

    @Override
    public List<String> buildConditionSql(QTable table, Map<String, JoinInfo> joinInfos, Map<String, JoinInfo> notJoinInfos, JSONObject param, List<Object> jdbcParams) {
        return Collections.emptyList();
    }

    @Override
    public List<String> buildConditionSql(QTable table, List<QCondition> conditions, List<Object> jdbcParams) {
        return Collections.emptyList();
    }
}
